package com.ruoyi.dataBase.domain.bo;

import com.ruoyi.common.core.validate.AddGroup;
import com.ruoyi.common.core.validate.EditGroup;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.*;

import java.util.Date;

import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 职能部门业务对象 industrial_funct_dept
 *
 * @author yangzhen
 * @date 2025-11-07
 */

@Data
@EqualsAndHashCode(callSuper = true)
@Schema(name = "IndustrialFunctDeptBo", description = "用户查询请求参数")
public class IndustrialFunctDeptBo extends BaseEntity {

    /**
     * 主键id
     */
    @NotBlank(message = "主键id不能为空", groups = { EditGroup.class })
    @Schema(description = "主键id")
    private String id;

    /**
     * 职能部门名称
     */
    @NotBlank(message = "职能部门名称不能为空", groups = { AddGroup.class, EditGroup.class })
    @Schema(description = "职能部门名称")
    private String functionalDeptName;

    /**
     * 职能部门类型
     */
    @NotBlank(message = "职能部门类型不能为空", groups = { AddGroup.class, EditGroup.class })
    @Schema(description = "职能部门类型")
    private String functionalDeptType;

    /**
     * 联系方式
     */
    @NotBlank(message = "联系方式不能为空", groups = { AddGroup.class, EditGroup.class })
    @Schema(description = "联系方式")
    private String phone;

    /**
     * 地址
     */
    @NotBlank(message = "地址不能为空", groups = { AddGroup.class, EditGroup.class })
    @Schema(description = "地址")
    private String address;

    /**
     * 经度
     */
    @NotBlank(message = "经度不能为空", groups = { AddGroup.class, EditGroup.class })
    @Schema(description = "经度")
    private String longitude;

    /**
     * 纬度
     */
    @NotBlank(message = "纬度不能为空", groups = { AddGroup.class, EditGroup.class })
    @Schema(description = "纬度")
    private String latitude;

    /**
     * 备注
     */
    @Schema(description = "备注")
    private String remark;


    @Schema(description = "数据状态")
    private Long dataStatus;
    @Schema(description = "开始创建时间")
    private Date beginCreateTime;
    @Schema(description = "结束创建时间")
    private Date endCreateTime;
    @Schema(description = "开始更新时间")
    private Date beginUpdateTime;
    @Schema(description = "结束更新时间")
    private Date endUpdateTime;


}
